<?php
class MemberModel extends CommonModel {

   //模型数据库   
   //protected $dbName = 'demo';


  //模型对表数据表的真实名称
  // protected $trueTableName = 'think_member'; 

   //字段映射
//protected $_map = array(

    //'id'=>'id',
	//'name'=>'name',
	//'dept_id'=>'dept_id',
	

//);

        // 自动验证设置
     /*
  
     //  array(验证字段,验证规则,错误提示,验证条件,附加规则,验证时间)
     */
    //  验证条件：（可选）   
    // Model::EXISTS_TO_VAILIDATE 或者0 存在字段就验证 （默认）
    //  Model::MUST_TO_VALIDATE 或者1 必须验证 
    //  Model::VALUE_TO_VAILIDATE或者2 值不为空的时候验证
    
    //附加规则： 配合验证规则使用（可选），包括： 
    //regex 使用正则进行验证，表示前面定义的验证规则是一个正则表达式（默认）
    //function 使用函数验证，前面定义的验证规则是一个函数名
    //callback 使用方法验证，前面定义的验证规则是当前Model类的一个方法
    //confirm 验证表单中的两个字段是否相同，前面定义的验证规则是一个字段名
    //equal 验证是否等于某个值，该值由前面的验证规则定义
    //in 验证是否在某个范围内，前面定义的验证规则必须是一个数组
    //unique 验证是否唯一，系统会根据字段目前的值查询数据库来判断是否存在相同的值
    
    //验证时间：（可选）
    //Model:: MODEL_INSERT 或者1新增数据时候验证
    // Model:: MODEL_UPDATE 或者2编辑数据时候验证
    // Model:: MODEL_BOTH 或者3 全部情况下验证（默认）

    
  
    protected $_validate     =     array(
        array('id','require','id主健冲突',1,'unique',1),
		array('name','require','name不能为空',1),
		array('dept_id','require','dept_id不能为空',1),
		    
        );
   
    // 自动填充设置
    //array(填充字段,填充内容,填充条件,附加规则)

    //填充字段就是需要进行处理的表单字段，这个字段不一定是数据库字段，也可以是表单的一些辅助字段，例如确认密码和验证码等等。

    //填充条件包括：

    // Model:: MODEL_INSERT 或者1 新增数据的时候处理（默认）

    // Model:: MODEL_UPDATE 或者2更新数据的时候处理

    // Model:: MODEL_BOTH 或者3所有情况都进行处理

    //附加规则包括：

    // function ：使用函数，表示填充的内容是一个函数名 

    // callback ：回调方法 ，表示填充的内容是一个当前模型的方法

    // field ：用其它字段填充，表示填充的内容是一个其他字段的值

    // string ：字符串（默认方式）

    protected $_auto     =     array(
        //array('id','',1),
		//array('name','',1),
		//array('dept_id','',1),
		
        );
           //插入SQL
        public function insertBySql($P)
        {
            if(!empty($P))
            {
            $sql="insert into think_member(id,name,dept_id)".
            " values('{$P['id']}',
			'{$P['name']}',
			'{$P['dept_id']}')";            
             return $this->db->execute($sql);
            }
            else
            {
              return false;
            }
        }

             //更新SQL
        public function updateBySql($P)
        {
            if(!empty($P))
            {
            $sql="update think_member set id='{$P['id']}',
			name='{$P['name']}',
			dept_id='{$P['dept_id']}'
			 where id='{$P['id']}'";           
             return $this->db->execute($sql);
            }
            else
            {
              return false;
            }
        }
   
           //自定义查询
        /*
        function buildWhere($P)
        {
           $w="";
           $qtypes=preg_split("/,/",$P["qtype"]);
           $querys= preg_split("/,/",$P["query"]);
           for($i=0;$i<count($qtypes);$i++){
             $w.="{$qtypes[$i]} like '%{$querys[$i]}%' and "; 
           }
           if(substr($w,strlen($w)-4,4)=="and ")
           $w=substr($w,0,strlen($w)-4); 
           //print_r($w);
           return $w;
            
        }
        */
        //生成json数据
        /*
        public function  json($action,$P,$primaryKey)
        {
            
           $sql="";
           return parent::json($action,$sql,$P,$primaryKey);  
            
        }
        */

}

/*
class MemberModel extends Model {


}
*/
?>